import axios from "axios";
import {Notify} from "vant";
import router from '../router/index.js';

axios.defaults.baseURL =process.env.NODE_ENV == 'production' ? 'http://backend-api-01.newbee.ltd/api/v1' : '/api/v1';

// 添加请求拦截器
axios.interceptors.request.use(function (config) {
  // 在发送请求之前做些什么
  let token = localStorage.getItem('xftoken');
  if(token){
	   config.headers.token = token;
  }
  return config;
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error);
});

axios.interceptors.response.use(response => {
	let data = response.data;
	console.log(data.resultCode);
	if (+data.resultCode != 200) {
		if (!data.message.includes('已存在')) {
		  Notify({ type: 'danger', message: data.message || "系统繁忙" });
		}
		
		// 如果当前路径就是/login 又去使用push 就会报重复跳转的错误
		if(+data.resultCode==416){
			if(router.currentRoute.path != '/login'){
				router.push("/login?needback=1")//登录后，还要返回到具体的页面
			}
		}
		//return Promise.reject(response.data);
	}
	
	return response.data;
}, reason => {
    console.log('当前网络繁忙，请您稍后再试~');
    return Promise.reject(reason);
});

export default axios;